home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 2004 #6
/
Amiga Plus CD - 2004 - No. 06.iso
/
AmigaPlus
/
Begleitmaterial
/
50Tools
/
Grafik
/
PerfectPaint
/
rexx
/
bridge
/
CropPaste.rx
< prev
next >
Wrap
Text File
|
2003-06-26
|
2KB
|
142 lines
/* arexx Script
CopyPaste
*/
options results
parse ARG Port CropX CropY CropW CropH b
ADDRESS value Port
pp_GetDepth
D=result
X2=CropW/2
Y2=CropH/2
IF D<9 then DO
pp_Psave "T:Cppal" 0
END
pp_GetCurrentBuffer
CBf=result
pp_GetCurrentBrush
CB=result
pp_FindEmptyBrush
Brush=result
if Brush=-1 then DO
pp_Warn "can't*find*empty|Brush."
EXIT
END
pp_FindEmptyBuffer
Bf=result
if Bf=-1 then DO
pp_Warn "can't*find*empty|Buffer."
EXIT
END
pp_SetBrush Brush
pp_PickBrush CropX CropY CropW CropH 1
pp_SetBuffer Bf
pp_New cropW cropH D
pp_EffectOff
IF D<9 then DO
pp_Pload "T:Cppal" 0
ADDRESS COMMAND
'delete >nil: T:Cppal'
ADDRESS value Port
END
pp_GetBrushMode
BM=result
pp_AvoidRefresh
pp_ClosestColor 255 255 255
White=result
pp_ClosestColor 0 0 0
Black=result
pp_SetBpen White
pp_SetApen Black
pp_SpareOnOff
pp_Cls
pp_setBrushMode 2
pp_plot X2 Y2
pp_SparetoStencil
pp_SetBpen Black
pp_Cls
pp_SpareOnOff
pp_setBrushMode 3
pp_plot X2 Y2
pp_setBrushMode BM
pp_FreeBrush
pp_SetBrush CB
pp_PermitRefresh
EXIT
pp_GetWidth
W=result
pp_GetHeight
H=result
pp_GetWidthB
Wb=result
IsBrush=0
IF Wb>0 then DO
IsBrush=1
pp_Bsave "perfectpaint:Temp/brush" 0 3
END
X2=CropW/2
Y2=CropH/2
pp_PickBrush CropX CropY CropW CropH 1
pp_CountFrames
nb=result
if nb>1 then do
Do i=1 to nb
pp_GotoFrame i
pp_PickBrush CropX CropY CropW CropH 1
pp_Bsave 'PerfectPaint:Temp/Anim'||i 0 1
END
pp_New CropW CropH
pp_MakeAnim nb 0
do i=1 to nb
pp_Bload 'PerfectPaint:Temp/Anim'||i
pp_Plot X2 Y2
pp_NextFrame
END
pp_FreeBrush
IF IsBrush=1 then DO
pp_Bload "perfectpaint:Temp/brush"
END
ADDRESS COMMAND 'delete >nil: PerfectPaint:Temp/?#.*'
EXIT
END